<?php
/*
 * 注册器模式 
 * 管理应用程序数据,提供系统级别的对象访问功能
 * 注册表类提供静态方法(或单例对象的实例化方法)来让其他对象访问其中的数据(通常是对象)。整个系统中的每个对象都可以访问这些数据对象。
*/


function my_autoloader($class) {
    //var_dump($class);
    include $class . '.php';
}
spl_autoload_register('my_autoloader');


//静态的单例对象的实例化方法
$registry = Registry::instance();
//存放对象
$registry->setRequest('request',new Request());
//获取对象
$rst = $registry->getRequest('request');
//获取对象中的方法
echo $rst->dump()."\n<BR/>";


//存放对象
$registry->setRequest('response',new Response());
//获取对象
$rst = $registry->getRequest('response');
//var_dump($rst);
//获取对象中的方法
echo $rst->dump()."\n<BR/>";


// Event
//实例化Event类，获取$registry数组
$event = new Event($registry);
//$registry->setRequest('event',$event);
//在对象event的exec方法中，执行其他对象
$rst = $event->exec();
var_dump($rst);
